Arcade game with keypad input

ABSTRACT

An arcade game that has a numeric keypad for entering telephone numbers is disclosed. After a telephone number, or other unique number is entered into the keypad, default settings for the player are retrieved from a database. The default settings can relate to the type of car driven, type of track to use or whether automatic or manual shifting is preferred. Once the play of a game has been completed, the database is updated with any new preferences selected by the player. In addition, game statistics, such as the number of miles completed, number of laps completed and best lap time are stored to the database.

RELATED APPLICATIONS

This is a divisional application of U.S. application Ser. No. 09/267,240filed on Mar. 12, 1999, now U.S. Pat. No. 6,287,201.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to game systems and, moreparticularly, is concerned with inputting player information for arcadegame systems.

2. Description of the Prior Art

Video arcade games are a technology providing a certain degree of userfeedback. Arcade games are typically placed in public areas such asarcade halls, theaters, airports and other areas where the users canoccupy time and entertain themselves by playing the game. Video Arcadegames utilizing video displays have been around for some time now,beginning with the simplistic game of bouncing a ball across a line withpaddles known as “Pong”. However, with the passage of time, video arcadegames have become ever more sophisticated and realistic.

In many senses, the arcade game called “Hard Drivin'™”, manufactured anddistributed by Atari Games Corp. of Milpitas, Calif., represents thestate of the art in arcade game realism. The physical layout of the gameincludes clutch, brake and gas pedals, a gearshift and a steering wheel.The player, or driver, is provided feedback response from a videodisplay having a three-dimensional graphical representation of thedriving environment and from a speaker which generates realistic soundsof driving. A digital processor, comprising a number of microprocessorsand a memory, is the interface between the player inputs and thefeedback response.

Conventional arcade games allow players to input their names or initialsinto the game through several cumbersome methods. For example, in somegames, players are asked to spell out their names or initials by turninga steering wheel. As the steering wheel is turned a pointer moves alonga row of letters. The player uses the steering wheel to move the pointerto the desired letter and then presses a gas pedal to add that letter topreviously chosen letters. As can be imagined, this method istime-consuming for the player, especially if they have a long name.

While some conventional arcade games store statistics related to aplayer's performance, the games do not store preferences for eachplayer. Examples of player preferences are, for example, in a drivinggame, the type of car, type of transmission and type of view. Thus,every time a player begins a new game, his preferences have to beentered. This is a time-consuming process that slows down the game play,and leads to lower revenues for the game operator. Companies that makearcade game systems rely on players being able to quickly enter andstart each game. If a player has to spend a lot of time entering hisname, the total earnings for the machine are reduced since fewer playerscan use the game every hour.

Some more recent games have been linked through dedicated data lines sothat players in physically distant locations can play one another.However, these linked games do not store preferences for each player.Thus, a player of a linked game that normally plays in Los Angelescannot go to San Francisco and have his preferences automatically set atthe beginning of the game. These games are normally only linked so thateach player can see each other during the game.

Consequently, a need exists for a simple, easy to use mechanism forplayers to enter their identities and preferences into an arcade game.The present invention provides a system for meeting such a need.

SUMMARY OF THE INVENTION

One embodiment of the invention is an arcade game that includes a systemfor rewarding players that have reached a predetermined goal. Thisembodiment includes: a keypad configured to receive an alphanumeric codefrom a player; a player database that receives the alphanumeric code andretrieves stored player statistics; a first memory configured to receivethe stored player statistics and determine whether any of the playerstatistics have reached a predetermined goal; and a second memoryconfigured to provide a reward to the player if the player statisticshave reached the predetermined goal.

Another embodiment of the invention is a method in an arcade game forrewarding players that have reached a predetermined goal. Thisembodiment includes: receiving alphanumeric code from a keypad of anarcade game; comparing the alphanumeric code against a player databaseto retrieve stored statistics on the player; determining whether any ofthe stored statistics have reached a predetermined goal; and providing areward to the player if the stored statistics have reached thepredetermined goal.

Yet another embodiment of the invention is an arcade game that includes:means for receiving alphanumeric code from a keypad of an arcade game;means for comparing the alphanumeric code against a player database toretrieve stored statistics on the player; means for determining whetherany of the stored statistics have reached a predetermined goal; andmeans for providing a reward to the player if the stored statistics havereached the predetermined goal.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of one preferred embodiment of a network ofarcade game machines.

FIG. 2 is a block diagram of one preferred embodiment of a controlsystem for an arcade game.

FIG. 3 is a flow diagram illustrating one embodiment of a process forregistering a player.

FIG. 4 is a flow diagram illustrating one embodiment of a process forstoring data to a player database in an arcade game.

FIG. 5 is a flow diagram illustrating one embodiment of a timer processfor storing keypad data to a buffer.

FIG. 6 is a flow diagram illustrating one embodiment of a process fordetermining whether data stored in a keypad buffer is ready to bematched against data in a player database.

FIG. 7 is a flow diagram illustrating one embodiment of a process forgranting rewards to a player.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention relates to systems and methods for entering andtracking player's usage of arcade games. Of course, it should beunderstood that the term “arcade game” as used herein is meant broadlyto encompass any type of game system that interacts with players. Forexample, one preferred type of arcade game is a conventional drivinggame that includes a steering wheel, gas pedal, brake and transmissionshifter. Other types of games can be for example, golf games, shootinggames or action games.

In one embodiment of the invention, a keypad is provided on the gamethat accepts input from a player. In use, the player enters his uniqueidentification number into the keypad. Instructions in the game comparethe unique identification number against a stored database of players.Once a match for the unique identification number is found in thedatabase, the player data corresponding to that identification number isloaded into the game. The data can be statistical or preferential innature.

Preferential data can be, for example, the type of track, type of car,preferred transmission setting (manual or automatic) or preferred viewof track (bumper, inside car, above car). Thus, after the player hasentered his identification number, default preferences are then loadedinto the game so that they do not need to be chosen.

Statistical information can include such data as the total miles driven,number of wins against human players, number of games played, best laptime per track and best overall time per track. This data can bedisplayed to the user before, during, or after the game has ended. Forexample, in one embodiment, an odometer can be shown the player during acar driving game to indicate the total number of miles that the playerhas driven. This total number would be accumulative for all of the gamesplayed on the machine. It should be noted that while this embodimentrelates to a single game it should be understood that multiple games canbe linked into a network so that a player can enter his identificationnumber on any game in the network to receive his preferences andstatistics.

In a preferred embodiment of the invention, the keypad resembles atouch-tone pad on conventional telephones. By using this design, youngplayers can more naturally be taught to enter a unique number, such ashis 10-digit telephone number. If a player enters a number that is notstored in the player database, the system will query the player to enterhis name or initials. Thus, a youthful player can simply enter his phonenumber, and then be queried to enter his name or initials. This processis described more completely with regard to the following figures.

In one embodiment, the player's name or initials can be entered in amanner similar to conventional arcade games wherein the steering wheeland gas pedal are used to select alphanumeric symbols that appear on thegame screen. Of course, other embodiments wherein the player enters hisname through another mechanism, for example, a keyboard, are alsocontemplated.

In another embodiment of the game, each player can be tracked by hisunique identification number so that “rewards” can be offered to playersthat reach certain preset goals. For example, after a player hascompleted more than a predetermined number of laps around a track, hecan be rewarded by gaining access to special game features. For examplea special car, unique car color, or other indicator of his achievementcan be displayed and activated in the game. This type of reward is veryattractive to players so that they can demonstrate their prowess toother players. Of course, this can become very important to a player ona distributed game system wherein other players only know of each otherby reference to the types of car that they are driving.

This invention is not limited to only arcade games that relate todriving games. Other games, such as golf or action games, are alsocontemplated. For example, a reward system can be similarly implementedinto a golf game wherein a player that completes a round of golf with apredetermined score gains access on his next game play to a particularreward. The reward might be, for example, a unique club set, or a clubthat drives the ball with more accuracy than the conventional club set.

Reference is now made to the drawings wherein like numerals refer tolike parts throughout.

As discussed below, embodiments of the system are not limited tostand-alone games, but are meant to be incorporated into a network ofgames that communicate through data channels, such as telephone lines.As shown in FIG. 1, two or more game units 16 at different locations maybe linked for real time interactive play. These game units may includeone or more game units from each of a plurality of groups of arcades 10,here designated as arcade 1, 1 through arcade 1, n and arcade n, 1through arcade n, n. The arcades of arcade group 1 are linked, throughrespective T-1 lines to a first or metro hub 12 here designated as theSan Francisco (SF) hub. Similarly, the arcades 10 of group n are linkedby T-1 lines to another first or metro hub, here designated as the LosAngeles (LA) hub. Each arcade includes a plurality of the game units 16which are operatively coupled with an arcade router (R) 18. Additionalgroups of arcades coupled to additional metro hubs may be added withoutdeparting from the invention.

A number of the metro hubs 12, 14, etc. may be coupled by telephone datalines, such as T-1 communication lines, to a regional center 20.Similarly, one or more of such regional centers 20 may be coupled by T-1lines to a super-regional center 22 and one or more super-regionalcenters 22 may be coupled by T-1 lines to a national center 24.Communications resources other than T-1 lines could be used withoutdeparting from the invention, such as fiber optic or other highbandwidth resources, preferably at T-1 or higher capacities.

Each metro hub 12 and each of the centers 20, 22, 24 is similar in thatit includes a router (R) 30 and a server (S) 32. The servers 32implement bandwidth management as described later herein in fartherdetail. Generally speaking, each of the servers 32 at the metro hubs 12,14 monitors the bandwidth usage on the T-1 lines between the metro hub12, 14 and the various arcades 10 which are linked to that hub via theseT-1 lines. This is referred to herein as downstream bandwidthmanagement. In upstream bandwidth management, the servers 32 monitor thebandwidth usage on the T-1 line between the associated router and thenext higher level as shown in FIG. 1, and control access to therespective T-1 lines. This is known as upstream bandwidth management.

Advantageously, the arrangement of routers and servers as illustrated inFIG. 1 is such that a player at an individual game unit 16 in any arcademay engage in real time interactive play with other players at othergame units in other locations, whether in the same arcade or in adifferent arcade. These players may be in different arcades served bythe same metro hub, or may be in locations which are ultimately linkedby a regional, super-regional or a national center through theintervening centers and hubs. Advantageously, the bandwidth managementand state synchronization aspects of the invention make possible realtime interactive play which is perceived by individual players as beingsubstantially simultaneous play. This is done in such a manner that,regardless of the locations of the several players, the perception ofeach player is essentially as if the other players were locatedimmediately adjacent to one another in the same location or arcade.

While the invention is described herein with reference to video gameunits in an arcade, it will be understood that the invention isapplicable to game units of other types as well. For example, thenetwork of the invention may be utilized to link home video games,whether played on stand-alone units through game controllers that linkto ordinary TV sets or for games that are played on personal computers(PCs). Any of these game units, if provided with suitable hardware andsoftware for accommodating networking operation, could be linked to thenetwork described above with reference to FIG. 1.

FIG. 2 illustrates a game unit 100 that includes several subsystems, asis known in the art. For example, conventional arcade games include adisplay system 104 for displaying high resolution, three dimensionalimages to a screen. The display system 104 communicates through a bus106 to a CPU system 110. The bus 106 can be in the form of anyconventional data bus, but is preferably a peripheral componentinterconnect (PCI) bus as is well known in the art. The CPU system 110includes a processor such as a Quantum Effect Design, Inc. R7000processor or any other well-known processor such as those provided byMotorola, Hitachi, Intel or IBM.

The CPU system 110 communicates with an input/output system 114 througha local bus 116. The local bus 116 is preferably a 32-bit local bus thatprovides data communications between the CPU system 110 and theinput/output system 114.

Within the input/output system 114 is an I/O connector 120 that acceptsinputs from peripheral devices. In one embodiment, the I/O connector 120is a Japanese Amusement Machine Manufacturer's Association (JAMMA)connector. This type of connector is well-known in the art of arcadegames and provides an interface for determining whether a peripheralevent has occurred. For example, in many arcade games, a JAMMA connectoris used to determine whether the start, fire, up, down, left or rightbuttons have been pressed by a player during a game play.

Attached to the I/O connector 120 is a series of column lines 122 a-cthat come from a keypad 124. The column lines 122 a-c act as inputs tothe I/O connector 120, as explained below. In one preferred embodiment,the keypad 124 resembles a standard telephone touchpad. As illustratedin FIG. 2, the keypad 124 includes buttons for numerals 0 through 9along with the pound (#) key and asterisk (*) key. In one embodiment,the keypad 124 is a model DC-3020-00 dial pad from Dynacom Corporation(South San Francisco, Calif.).

A series of row lines 126 a-d coming from an I/O connector 130 on amotor amp system 134 also connect to the keypad 124. The row lines 126a-d connect to outputs on the I/O connector 130 and drive signals to thekeypad 124. The motor amp system 134 communicates with the input/outputsystem 114 through a bus 136.

The motor amp system 134 is used within the arcade game to providefeedback to a player. For example, if the system indicates that theplayer is about to go over a bump in the road, the motor amp system 134sends a signal to the steering system (not shown) that causes it toshake, emulating that a bump has been traversed.

In the implementation illustrated in FIG. 2, the motor amp system 134provides the outputs for communicating with the keyboard 124. It shouldbe understood that it is not necessary to use the outputs from the motoramp system 134 to drive signals to the keypad 124. For example, theintegrated input/output system 114 could be provided with sufficientoutputs to drive signals directly to the keypad 124 and bypass the motoramp system 134.

As will be discussed in more detail below, instructions running on aprocessor in the CPU system 110 cause one or more of the row lines 126a-d to be driven to a high state. Other instructions running theprocessor then look at the state of the column lines 122 a-c todetermine if they are asserted to a high state. If any of the buttons onthe keypad 124 are pressed, the row and column lines corresponding tothat button are connected. Thus, if the “0” button is pressed, the rowline 126 a will be connected with the column line 122 b. By analyzingwhich row line is asserted and which column line is being driven high,the system can determine which button is being pressed. The functions ofthe keypad 124 within the system of the invention are described morecompletely in reference to the following figures.

FIG. 3 is a flow diagram of the process 200 for registering a playerinto the game system. The process 200 begins at a start state 204 andthen moves to a decision state 206 wherein a determination is made ofwhich button has been pressed to initiate the registration process. Itshould be noted that this process can be undertaken at any time duringthe game. Preferably, the process is undertaken at the beginning of thegame, as the player first walks up to begin to play. Normally, the gamewill display a series of images attractive to players, and might includesounds or other effects for grabbing a player's attention.

A label on the game can indicate that a particular button, for examplethe view button, should be depressed to enter a dedicated screen forgathering a player's information. Thus, if a determination is made atthe decision state 206 that the view button has been pressed, theprocess 200 moves to a state 208 wherein a dedicated screen is presentedto the player requesting that his unique identification number beentered into the keypad 124.

As will be discussed more completely below, the preferable uniqueidentification number for the player is his 10-digit telephone numberbecause it is easy to remember and simple to type into the telephonictype keypad 124. Once a player has entered his phone number into thekeypad at the state 208, the process 200 moves to a state 220 wherein adetermination is made whether the phone number entered is recognized bythe system. This decision is based on a search of records stored withina player database in the game unit 100. It should be realized that thedatabase of names and telephone numbers can be stored within any type ofmemory in the game unit.

For example, the database can be stored on a hard disk, electricallyerasable programmable read only memory (EEPROM), random access memory orother well-known medium for storing data. In addition, the database canbe stored on a hard disk and then loaded into the random access memoryof the game system as the machine is initially powered on. In thismanner, the data is securely stored on a hard disk, but is availablewithin the faster RAM to decrease the access time. Of course, new dataentered by users would be saved from the RAM to the hard disk so that ifa power failure occurred, the data would be safely backed up on the harddisk.

It should also be noted that the player database could be stored in adifferent location than the current game unit being played. For example,in a wide area network of game units such as described in FIG. 1, theplayer database could be stored in a central server and accessed throughdedicated data lines to the local game system.

If a decision is made at the decision state 220 that the phone numberentered at the state 208 was recognized, the process 200 moves to astate 226 wherein the name of the player is displayed on the screen. Theprocess 200 then moves to a state 230 wherein the stored preferences andstatistics for the player are copied into the game system to overridethe normal default settings. Thus, the player having the enteredidentification number is entered as the current player in the system andthe previous player settings are erased. It should be noted that at thestate 226 wherein the name of the player is displayed, the player can begiven the option of changing his name if necessary.

If a determination is made at the decision state 220 that theidentification number is not recognized, the process 200 moves to astate 234 wherein a new record is created in the player database, andthe player's name is entered. In one embodiment, the player enters hisname into the system by turning the steering wheel to cause the image ofa pointer on the screen to move below a list of letters. Once thepointer appears below the desired letter, the player presses the gaspedal to select that letter to be entered into the system. After theplayer has selected all the letters for his name or initials, theidentification number and name of that player are entered into the newrecord in the player database.

Once the player's name has been collected at the state 234, the process200 moves to the state 230 wherein the default selections made by thenew player are saved to the database in the game unit. Thus, once theplayer has entered his telephone number and name into the system, thesystem tracks the preferences set by the player in every game. Thesepreferences can include the type of track preferred, car preferred, orview preferred. It should be noted that other default settings inaddition to those listed could also be stored to the player's record inthe player database. Every time the player plays the game from thispoint forward, his default preferences and statistics will be saved tothe player database and automatically retrieved once his telephonenumber is entered into the keypad.

Returning to the decision state 206, if a determination is made that anyof the buttons on the keypad are pressed prior to the view button beingpressed, the system collects the phone number entered in the backgroundat a state 240. This process will be described more specifically withreference to FIGS. 4 and 5 below. Thus, if a player simply walks up tothe machine and types in his phone number, a decision will then be madeat a decision state 245 whether the phone number is recognized. If thephone number is recognized, the process 200 moves immediately toretrieving the player's default preferences and statistics. Thesesettings are then used to set the defaults for the current game in thegame unit. Thus, this provides a very rapid mechanism for the playerretrieve his default settings from within the database from the gamesystem. In addition, if the player decides to play an additional game onthe same machine, a special button such as the “#” key can be pressed toretrieve the updated settings of the current player. Of course, atime-out feature would be associated with this function so that a playercannot simply walk up to a machine, press #, and thereafter affect thestatistics of the previous player. Preferable time-outs could be five,ten, fifteen or twenty seconds after the game ends.

If a determination is made at the decision state 245 that the collectedphone number is not recognized, the process 200 moves to the state 208wherein a dedicated screen is displayed to collect the requiredinformation, such as name, from the player.

Referring now to FIG. 4, a process 250 for entering data into the playerdata base within the game system is described. The process 250 begins ata start state 252 and moves to a decision state 254 wherein adetermination is made whether the game is over. If the game is not over,the process 250 continues looping until the game is over. Once the gamehas finished, the process 250 moves to a state 256 wherein the totalmiles driven during the current game are added to the total milesalready stored for the player.

The process 250 then moves to a state 258 wherein the total laps drivenduring the current game are added to the total number of laps alreadystored in the database for the player. The process 250 then moves to adecision state 262 wherein a determination is made whether the currentfastest lap time for the current game is less than the stored lap timefor the player. If the fastest lap time in the current game is less thanthe stored lap time, the process 250 moves to a state 268 wherein thefastest current lap time is stored to the player data base. The processthen terminates at an end state 270. However, if the best lap timeduring the current game is not less than the lap time already stored forthe player, the process skips state 268 and moves directly to the endstate 270.

It should be noted that the type of information stored to the database,as indicated in FIG. 4, is only exemplary. Other statistics for theplayer can be stored to the player database without departing from thespirit of the invention. Such other information might include the numberof plays per day, number of plays during a certain time of the day, andother statistical information that can be used to generate rewards forthe player. Moreover, in non-driving games, statistics related togolfing, wins or other parameters of the game can be stored.

Referring now to FIG. 5, a timer process 300 for determining whether abutton has been pressed on the keypad 124 is illustrated. The timerprocess 300 begins at a start state 302 and then moves to a state 304wherein a first row line from the I/O connector 130 to the keypad 124 isasserted. As can be seen upon reference to FIG. 2, the I/O connector 130connects to the keypad 124 through a series of row lines 126 a-d. Atstate 304, the first row line 126 a is driven to a high state.

The timer process 300 then moves to a state 308 wherein each of thecolumn lines 122 a-c are read. The timer process 300 then moves to adecision state 320 wherein a determination is made whether any of thecolumn lines 122 a-c are active. As discussed above, if a button waspressed on the keypad 124, a connection is made between the column lineand the row line. Thus, if row line 126 a is asserted, and the “0” keyis pressed, the column line 122 b will be asserted and can be detectedby instructions in the I/O system 114. In this manner, one can determinewhich button has been pressed on the keypad by knowing the currentlyasserted row line and the currently asserted column line.

If a determination is made at the decision state 320 that none of thecolumn lines are active at the I/O connector 120, the process 300 movesto a state 322 wherein the next row line 126 b is asserted. Of course,the first row line 126 a would be de-asserted at the same time that thenext row line 126 b becomes asserted. The timer process 300 then returnsto the state 308 to read the inputs from the keypad 124.

If a determination is made at the decision state 320 that one of thecolumn lines is active, the process 300 moves to a state 326 wherein thenumber pressed on the keypad 124 is determined. Once a determination ofthe depressed number is made at the state 326, the process 300 moves toa state 328 wherein the number depressed on the keypad is stored into amemory buffer. Of course, in alternate embodiments, the number depressedcan be immediately stored to a permanent memory such as a hard diskwithout departing from the spirit of the invention.

To summarize, the timer process 300 sequentially asserts each of the rowlines 126 a-d while analyzing if any of the column lines 122 a-c areasserted. Through analysis of which column line 122 a-c is asserted, thetimer process 300 determines which key, if any, has been depressed onthe keypad 124. Preferably, the timer process 300 only takes a fewmilliseconds to complete one cycle through each potential key press.Accordingly, if a key is pressed for only a very short duration, thetimer process 300 will detect this action and store the appropriatenumber to a memory buffer.

In one preferred embodiment, the timer process 300 is written in the “C”programming language and compiled using a Gnu C compiler (Free SoftwareFoundation, Boston, Mass., www.gnu.org). The timer process 300 is thenexecuted on a Quantum Effect Design, Inc. (www.qedinc.com, Santa Clara,Calif.) R7000 processor located in the CPU system 110. However, oneskilled in the art of computers will recognize that many other computerlanguages and computers, including pluralities of each, may be used toachieve the same result.

Referring now to FIG. 6, a process 350 of indicating when data is readyto be read from the keypad buffer is illustrated. The process 350 beginsat a start state 352 and then moves to a state 354 wherein a keypadinput flag is set to false. The keypad input flag is used to indicate tothe game control software that a unique identification number is readyto be matched against the data base of users stored within the gamemachine. The process 350 then moves to a state 358 wherein the data inthe keypad buffer is read.

A determination is then made at a decision state 362 whether any data inthe keypad buffer corresponds to the pound (“#”) sign. In a preferredembodiment, the pound sign can be pressed by the player to indicate thathis unique identification number is shorter than a ten-digit telephonenumber. For example, the player's identification number might be“1-2-3-4-5.” In this manner, the user can press the pound sign toindicate to the game control system that the unique identificationnumber is ready to be matched against the database of players storedwithin the game system.

If a determination is made that the pound sign was not pressed at thedecision state 362, the process 350 moves to a decision state 364wherein a determination is made whether there are ten characters in thekeypad buffer. If ten characters are in the key pad buffer, the process350 moves to a state 368 wherein the keypad input flag is set to true.The process then ends at an end state 370. However, if the pound signwas pressed, and thus part of the data in the key pad buffer at thedecision state 362, the process 350 immediately sets the keypad inputflag to true at the state 368.

If a determination was made that the pound sign had not been pressed,and that there were less than ten characters in the key pad buffer, theprocess moves from the decision state 364 back to the state 358 whereinadditional data is read from the buffer.

To summarize, the keypad input flag is used to indicate whether dataentered on the keypad 124 is ready to be matched against the playerdatabase stored within the game unit 100. Thus, once a uniqueidentification number, followed by the pound sign, or a ten digittelephone number have been entered, the key pad input flag is set totrue. If less than ten digits have been entered into the keypad, and thepound sign has not been pressed, the system continues monitoring thekeypad input buffer until such a time that the pound sign or ten digitsappear within the buffer.

Referring now to FIG. 7, a process 400 of granting rewards to a playeris illustrated. The process 400 begins at a start state 402 and thenmoves to a decision state 404 wherein a determination is made whetherthe keypad input flag has been set to true. If the keypad input flag hasnot been set to true at the decision state 404, the process continueslooping until the key pad input flag is set to true. Once this flag hasbeen asserted, the process 400 moves to a state 410 wherein the data inthe keypad input buffer is read and stored to a variable. The process400 than moves to a state 416 wherein the data retrieved from the keypadinput buffer is matched against a player database so that information onthe player can be retrieved. As discussed previously, data is stored foreach player for every game that is played. For example, once a playercompletes a game, the statistics relating to that game are added to theplayers database so that the database is constantly updated with newplayer information.

For example, once a player has completed a game, the number of milesdriven during the current game can be added to the total miles alreadystored for that player. In addition, the players lap time can becompared against a stored lap time to determine whether the player hasimproved in this game. If the player has improved during this game, thenew, faster lap time is stored to the player's record in the database.

Once the player's information has been retrieved from the database atthe state 416, the process 400 moves to a decision state 418 wherein adetermination is made whether a preset goal has been reached. There canbe several preset goals identified in the game system. For example, onegoal might be a particular number of miles that must be driven. Thus,once a player has driven a predetermined total number of miles, thisgoal is reached. Other possible goals are a particular, very fast laptime or a total number of games played. If a determination is made thatthe preset goal has not been reached, the process 400 sets the keypadinput flag to false at a state 420 and clears the keypad input buffer ata state 422 before returning to the decision state 404.

However, if a determination is made that the preset goal has beenreached, the process 400 moves to state 424 wherein an appropriatereward is determined. Appropriate rewards might be, for example, thegranting of the right to use a special car within the driving game.Other rewards might be a unique paint color or other indicator to otherplayers that a preset goal has been reached. This might be particularlyattractive on a wide area distributed game wherein players are indifferent physical locations. Thus, one player could indicate to otherplayers that he has reached a particular preset goal by possessing aunique car, for example. The process 400 then moves to a state 430wherein the appropriate reward is granted to the player by way ofdisplaying the car, or offering particular colors, or any other meansfor indicating that the player has reached a predetermined goal.

In one embodiment, the player can be provided with additional weapons orfeatures not commonly available to other players once the predeterminedgoal has been reached. The process 400 then moves to a state 436 whereinthe key pad input flag is set to false and the process then ends at anend state 440.

Although the preferred embodiments of the present invention have beenprincipally shown and described as relating to arcade games, the presentinvention could also be used as a vehicle simulator such as a drivertraining system.

While the above detailed description has shown, described and pointedout fundamental novel features of the invention as applied to variousembodiments, it will be understood that various omissions andsubstitutions and changes in the form and details of the deviceillustrated may be made by those skilled in the art, without departingfrom the spirit of the invention.

What is claimed is:
 1. An arcade game that includes a system forrewarding players that have reached a predetermined goal, comprising: akeypad configured to receive an alphanumeric code from a player; aplayer database that receives the alphanumeric code and retrieves storedplayer statistics, wherein said database is stored within a memory insaid arcade game; a first memory configured to receive the stored playerstatistics and comprising instructions for determining whether any ofthe player statistics have reached a predetermined goal; and a secondmemory configured to provide a reward to the player if the playerstatistics have reached the predetermined goal.
 2. The arcade game ofclaim 1, wherein the alphanumeric code is a 10 digit telephone number.3. The arcade game of claim 1, wherein the keypad is in the format of atelephone keypad.
 4. The arcade game of claim 1, wherein the arcade gameis a car driving game.
 5. The arcade game of claim 4, wherein thepredetermined goal is selected from the group consisting of: a totalnumber of laps driven, a total number of miles driven, a total number ofgames played and a specific lap time.
 6. A method in an arcade game forrewarding players that have reached a predetermined goal, comprising:receiving alphanumeric code from a keypad of an arcade game; comparingthe alphanumeric code against a player database to retrieve storedstatistics on the player, wherein said player database is stored in amemory within said arcade game; determining whether any of the storedstatistics have reached a predetermined goal; and providing a reward tothe player if the stored statistics have reached the predetermined goal.7. The method of claim 6, wherein the alphanumeric code is a 10 digittelephone number.
 8. The method of claim 6, wherein the keypad is in theformat of a telephone keypad.
 9. The method of claim 6, wherein thearcade game is a car driving game.
 10. The method of claim 9, whereinthe predetermined goal is selected from the group consisting of: a totalnumber of laps driven, a total number of miles driven, a total number ofgames played and a specific lap time.
 11. An arcade game, comprising:means for receiving alphanumeric code from a keypad of an arcade game;means for comparing the alphanumeric code against a player database toretrieve stored statistics on the player, wherein said player databaseis stored within a memory in said arcade game; means for determiningwhether any of the stored statistics have reached a predetermined goal;and means for providing a reward to the player if the stored statisticshave reached the predetermined goal.
 12. The arcade game of claim 11,wherein the alphanumeric code is a 10 digit telephone number.
 13. Thearcade game of claim 11, wherein the alphanumeric code is in the formatof a telephone keypad.
 14. The arcade game of claim 11, wherein thearcade game is a car driving game.
 15. The arcade game of claim 14,wherein the stored statistics comprise the total number of times thatthe player has played the game.
 16. The arcade game of claim 14, whereinthe stored statistics comprise the total number of miles driven by theplayer.
 17. The arcade game of claim 14, wherein the stored statisticscomprise the fastest lap time for the player.
 18. The arcade game ofclaim 11, wherein the means for comparing is selected from the groupconsisting of: a Random Access Memory, an Electrically ErasableProgrammable Read Only Memory (EEPROM) and a hard disk.
 19. An arcadegame that includes a system for rewarding players that have reached apredetermined goal, comprising: a keypad configured to receive analphanumeric code from a player; a player database that receives thealphanumeric code and retrieves stored player statistics; a first memoryconfigured to receive the stored player statistics and comprisinginstructions for determining whether any of the player statistics havereached a predetermined goal; and a second memory configured to providea special game feature to the player if the player statistics havereached the predetermined goal.
 20. The arcade game of claim 19, whereinthe arcade game is a car driving game.
 21. The arcade game of claim 20,wherein said special game feature comprises a unique car color or aspecial car.
 22. The arcade game of claim 19, wherein said special gamefeature comprises an enhancement of an existing game feature.
 23. Thearcade game of claim 19, wherein said special game feature is theprovision of additional weapons.
 24. A method in an arcade game forrewarding players that have reached a predetermined goal, comprising:receiving alphanumeric code from a keypad of an arcade game; comparingthe alphanumeric code against a player database to retrieve storedstatistics on the player; determining whether any of the storedstatistics have reached a predetermined goal; and providing a specialgame feature to the player if the stored statistics have reached thepredetermined goal.
 25. The arcade game of claim 24, wherein the arcadegame is a car driving game.
 26. The arcade game of claim 25, whereinsaid special game feature comprises a unique car color or a special car.27. The arcade game of claim 24, wherein said special game featurecomprises an enhancement of an existing game feature.
 28. The arcadegame of claim 24, wherein said special game feature is the provision ofadditional weapons.